package com.swsc.solarverse.dao.entity.analysis;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.swsc.solarverse.dao.entity.base.AssignBaseLongIdDO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * <p>
 * 
 * </p>
 *
 * @author AutoGenerator
 * @since 2024-07-02
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("solar_corporation_efficiency_record")
public class CorporationEfficiencyRecordDO extends AssignBaseLongIdDO {


    @TableField("tenant_no")
    private Integer tenantNo;

    @TableField("organ_no")
    private Integer organNo;

    /**
     * 数据时间
     */
    @TableField("data_time")
    private LocalDateTime dataTime;

    /**
     * 能效/日发电量
     */
    @TableField("efficiency")
    private Double efficiency;

    /**
     * 子阵组串数量
     */
    @TableField("string_num")
    private Integer stringNum;

    /**
     * 损失电量比例
     */
    @TableField("avg_loss_e")
    private Double avgLossE;

    @TableField("acc_avg_loss_e")
    private Double accAvgLossE;

    @TableField("create_time")
    private LocalDateTime createTime;

    public CorporationEfficiencyRecordDO() {
    }

    public CorporationEfficiencyRecordDO(Integer tenantNo, Integer organNo, LocalDateTime dataTime, Double efficiency, Integer stringNum, LocalDateTime createTime) {
        this.tenantNo = tenantNo;
        this.organNo = organNo;
        this.dataTime = dataTime;
        this.efficiency = efficiency;
        this.stringNum = stringNum;
        this.createTime = createTime;
    }

    public CorporationEfficiencyRecordDO(Integer tenantNo, Integer organNo, LocalDateTime dataTime, Double efficiency, Integer stringNum, Double avgLossE, Double accAvgLossE, LocalDateTime createTime) {
        this.tenantNo = tenantNo;
        this.organNo = organNo;
        this.dataTime = dataTime;
        this.efficiency = efficiency;
        this.stringNum = stringNum;
        this.avgLossE = avgLossE;
        this.accAvgLossE = accAvgLossE;
        this.createTime = createTime;
    }
}
